package cl.uchile.in77j;

/**
 * Operador celular que permite la comunicación entre el dispensador y
 * el cliente.
 * 
 * @author Luis Gajardo
 */
public class Operador {
 //Object Conexion para el registro por evento y método en tabla log;
    Conexion cxn = new Conexion();

    private String PIN; //declaracion de variable PIN tipo String
private Integer Monto; //declaracion de variable Monto tipo Integer



    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.C7346ECF-3E3A-923A-ADF1-456A03346CEE]
    // </editor-fold> 
    /**
     *
     */
    public Operador() {
      cxn.log("PIN");

        recibirPIN();  //Funcion recibir PIN
	if(validarPIN()==true){  //Funcion Valida PIN y devuelve True si es valido
		System.out.println(“PIN válido”); //imprime PIN valido
	}else{
		System.out.println(“PIN Incorrecto”); //imprime PIN invalido
	}
	System.out.println(recibirMontoDisponible());//Imprimir Monto Disponible

    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.6AF3FFA2-7075-0D68-FD08-171BA6C4368D]
    // </editor-fold> 
    /**
     *
     * @param pin
     */
    public void recibirPin(int pin) {
           cxn.log("RecibirPIN");

        PIN=this.jTextField1.getText(); //toma de teclado el numero PIN
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.44FE2522-652E-B8E8-5411-70E7B2B31CB5]
    // </editor-fold> 
    /**
     *
     * @param precio_producto
     */
    public void recibirDescuento(int precio_producto) {
           cxn.log("RecibirDescuento");

        if(BuscaCodigoValido(PIN)==true){  //valida con la funcion BuscaCodigoValido si el PIN es Verdadero
   return true;  //Retorna un True si lo es
}else{
   Return false;  //Sino devuelve un Falso
	}


    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.FA9CE4FC-0E66-298F-86A4-EC2B98F7146F]
    // </editor-fold> 
    /**
     *
     * @param monto
     * @param nro_telefono
     */
    public void RecibirMonto(int monto, int nro_telefono) {
	   cxn.log("RecibirMonto");

        Monto=COnversorPINaMonto(PIN);   //Convierte el PIN valido a Monto equivalente.
	Return Monto; //Retorna Monto
    }

    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.675CDDEA-A0CE-7F74-601C-CBE9CA2B52F9]
    // </editor-fold> 
    private boolean validarPin () {
                 cxn.log("ValidarPIN");

        if(BuscaCodigoValido(PIN)==true){  //valida con la funcion BuscaCodigoValido si el PIN es Verdadero
   return true;  //Retorna un True si lo es
}else{
   Return false;  //Sino devuelve un Falso
	}

        return true;
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.1457296F-7947-B52E-2105-D5F38F37413A]
    // </editor-fold> 
    private void InformarRebaja (int monto) {
                   cxn.log("Informar Rebaja");

        System.out.println(“La rebaja es ” + monto); //imprime Monto
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.5486B204-103B-CE12-300D-A1AA9C7C7F83]
    // </editor-fold> 
    private void ValidaServicio (int monto, int nro_telefono) {
           cxn.log("Validar Servicio");

    if(nro_telefono!="" && monto>500){  //Funcion Valida PIN y devuelve True si es valido
		System.out.println(“Puede elegir su bebida”); //imprime
	}else{
		System.out.println(“No es posible hacer su pedido”); //imprime 
	}
    }

}

